package com.aps.server.context;

import org.apache.commons.lang3.StringUtils;

/**
 * @Author nbZhuozh
 * @Date 2025-10-21  09:53
 *
 * 前缀 biz 为业务相关缓存数据
 * 前缀 algor 为算法相关缓存数据
 **/
public class RedisKeyConstant {

    /**
     * 当前约束对应的 配置 prefix key (已经生成的方案对应的配置)
     * 结果 Map<String,SchedulingPlanGenerateDto> :
     * KEY:约束id ， VALUE: SchedulingPlanGenerateDto 规则内容
     */
    public static final String ALGOR_REDIS_CONSTRAINT_KEY = "ALGOR_REDIS_CONSTRAINT_KEY::";

    /**
     * 当前生成的结果 prefix key (已经生成的方案对应的配置的计划)
     * 结果 Map<String,BasicEquipSchedulingResult> :
     * KEY:约束id ， VALUE: BasicEquipSchedulingResult 算法最优解
     */
    public static final String ALGOR_REDIS_PLAN_DATA_KEY = "ALGOR_REDIS_PLAN_DATA_KEY::";

    /**
     * 暂存未经过校验的表单数据 对应表单配置
     * 结果 Map<String,SchedulingPlanGenerateDto> :
     * KEY:约束id ， VALUE: SchedulingPlanGenerateDto 表单规则内容
     */
    public static final String BIZ_REDIS_CONSTRAINT_DATA_KEY = "BIZ_REDIS_CONSTRAINT_KEY::";




    public static String getDefaultKey(String prefix , String tenantId){
        if(StringUtils.isBlank(prefix) || StringUtils.isBlank(tenantId)){
            return null;
        }
        return prefix + tenantId;
    }


}
